<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

        .login-box {
            margin: 50px;
        }

        .login-box .title {
            font-weight: bold;
            line-height: 80px;
            text-align: center;
        }

        .login-box .block {
            margin: 30px 0;
        }

        .login-box .block input {
            height: 40px;
            padding-left: 20px;
            border: 1px solid #ccc;
            border-radius: 5px;
            width: 100%;
            outline: none;
            box-sizing: border-box;
        }
    </style>
</head>

<body>
    <div class="login-box">
        <div class="title">登录页</div>
        <div class="block">
            <input type="text" placeholder="输入用户名">
        </div>
        <div class="block">
            <input type="password" placeholder="输入密码">
        </div>
        <div class="block">
            <input type="button" value="登陆">
        </div>
    </div>
    <!-- ! 
        ! async 放在函数的最前面， 标记该函数是异步函数，
        ! 使用await指令等待Promise对象的状态发生改变 并获得到resolve穿过来的参数,然后才能继续执行后续代码
        ! await指令只能在async函数内部(async和await往往需要配合使用)
     !-->
    <script src="./promise-ajax.js"></script>

    <script>

        //获取三个input输入框
        var inputs = document.querySelectorAll('.login-box .block input');
        //给button绑定点击事件
        inputs[2].onclick = async function () {
            //对表单内容做校验( 为空校验, 格式校验 )
            if (inputs[0].value && inputs[1].value) {
                //if( /^1[3-9]\d{9}$/.test( inputs[0].value ) && /^\d{4}$/.test(inputs[1].value) ){
                if (/^\d{4}$/.test(inputs[1].value)) {
                    //通过校验, 发起登陆请求

                    //await指令只能用在async函数内部
                    // 使用await指令等待Promise对象的状态发生改变 并获得到resolve穿过来的参数
                    var res = await ajax('get', 'https://yantianfeng.com/api/login', { username: inputs[0].value, password: inputs[1].value })
                    {
                        // console.log(data);
                        if (res.status == 200) {
                            console.log('登陆成功');
                        } else {
                            console.log('登陆失败!');
                        }
                    }
                } else {
                    alert('请输入正确的手机号/密码')
                }
            } else {
                alert('用户名/密码不能为空!')
            }
        }

    </script>

</body>

</html>